home *** CD-ROM | disk | FTP | other *** search
/ Scientific American: The Amateur Scientist / Scientific American - The Amateur Scientist (Tinker's Guild)(2000).iso / amsci01 / 1980 / 11 / 1980-11-01.code next >
Text File  |  2000-09-11  |  1KB  |  27 lines

  1. <CODE>
  2. 10 CLS: PI=3.1416: DR=.01745 <BR>
  3. 20 INPUT "NUMBER OF DOTS"; D: INPUT "SHIFT ANGLE (DEG)"; DD <BR>
  4. 30 INPUT "SHRINKAGE (%)"; S: DIM X(D), Y(D), R(D), T(D) <BR>
  5. 40 FOR K=1 TO D: X(K)=RND (127) : Y(K)=RND (47) <BR>
  6. 50 XX=(X(K)-64)/2: YY=Y(K) - 24 60 IF XX=0 <BR>
  7. GO TO 110 ELSE T(K)=ABS( ATN(YY/XX) ) <BR>
  8. 70 IF XXɘ AND YY=ɬ THEN T(K)=PI - T(K) <BR>
  9. 80 IF XXɘ AND YYɘ THEN T(K)=PI + T(K) <BR>
  10. 90 IF XXɬ AND YY<=0 THEN T(K)=2*PI - T(K) <BR>
  11. 100 R(K)=SQR ( XXl2+YYl2): R(R)=R(K)*(1 - S/100) <BR>
  12. 110 NEXT Y <BR>
  13. 120 FOR J=1 TO 15: CLS: DT=DD*J*DR: PRINT Q 544, "*";: PRINT @ 0, DT/DR; <BR>
  14. 130 FOR K=1 TO D: SET (X(K), Y(K)) : NT=T(K)+DT <BR>
  15. 140 NX=64+2*R(K)*COS(NT) : NY=24+R(K)*SIN(NT) 141 NX=INT( NX+.5) : NY=INT( NY+.5) <BR>
  16. 150 IE NXɘ OR NX OR NYɘ OR NYᡧ GO TO ;70 <BR>
  17. 160 IF POINT (NX, NY) THEN GO TO 170 ELSE SET (NX, NY) <BR>
  18. 170 NEXT K <BR>
  19. 180 FOR L=1 TO 400: NEXT L <BR>
  20. 190 NEXT J <BR>
  21. 200 GO TO 200 <BR>
  22. </CODE>
  23.  
  24.  
  25. A program for rotafing a random-spot display on a home computer
  26.  
  27.